<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="./vue.js"></script>
</head>
<body>
<div id="root">
    <button @click="fn">点我</button>
        <p>{{arr}}</p>
</div>
</body>
<script>
    new Vue({
        el: '#root',
        data: {
           arr:[1,2,3,4]
        },
        methods:{
            fn(){
              // this.arr.push(1);
              // this.arr[0]=200; //无法实现响应式

                // 解决:
                // const copyarray=[...this.arr];
                // copyarray[0]=200;
                // this.arr=copyarray;

                this.$set(this.arr,1,300)

            }
        },
        watch:{
            arr(newValue,oldValue){
            	console.log("arr",newValue,oldValue)
            }
            // arr:{
            //     handler(newValue,oldValue){
            //         console.log("arr",newValue,oldValue)
            //     },
            //     immediate:true,// 立即调用。
            // }
        }
    })
</script>
</html>